[][src]Crate aead

Authenticated Encryption with Associated Data (AEAD) traits

This crate provides an abstract interface for AEAD ciphers, which guarantee both confidentiality and integrity, even from a powerful attacker who is able to execute chosen-ciphertext attacks. The resulting security property, ciphertext indistinguishability, is considered a basic requirement for modern cryptographic implementations.

See RustCrypto/AEADs for cipher implementations which use this trait.

Re-exports

pub use generic_array;
pub use heapless;

Modules

consts

Type aliases for many constants.

devfeature="dev"

Development-related functionality

Macros

new_testfeature="dev"

Define AEAD test

Structs

Error

Error type.

Payloadfeature="alloc"

AEAD payloads are a combination of a message (plaintext or ciphertext) and "additional associated data" (AAD) to be authenticated (in cleartext) along with the message.

Traits

Aeadfeature="alloc"

Authenticated Encryption with Associated Data (AEAD) algorithm.

AeadInPlace

In-place stateless AEAD trait.

AeadMutfeature="alloc"

Stateful Authenticated Encryption with Associated Data algorithm.

AeadMutInPlace

In-place stateful AEAD trait.

Buffer

In-place encryption/decryption byte buffers.

NewAead

Instantiate either a stateless Aead or stateful AeadMut algorithm.

Type Definitions

Key

Key for a NewAead algorithm

Nonce

Nonce: single-use value for ensuring ciphertexts are unique

Tag

Tag: authentication code which ensures ciphertexts are authentic